home *** CD-ROM | disk | FTP | other *** search
-
-
-
-
-
-
- SCL1 - Revision History - Page 1
-
- VERSION 1.0
-
- Initial release version.
-
- VERSION 1.1
-
- Maintenance version to correct some problems and improve some
- functions.
-
- VERSION 2.0
-
- For several reasons we were forced to make various changes that make
- version 2.0 incompatible with version 1.1 in some aspects:
-
- SCL1's global variables -
-
- Some of SCL1's global variables were not originally intended to
- be made accessible to non-library functions, in fact some of them
- were not even documented. They were given names in capital
- letters (like MOUSE_FLAG). This can create confusion since
- capital letters are generally used in C language for #define
- directive constants. Global variables names have been changed in
- order prevent possible conflicts. Every variable now has a prefix
- that identifies the function that declares the variable; for
- example all mouse variables start with MSE, while all Video
- variables declared in function VideoConfig start with VC. The
- variable name follows the prefix like for example MSE_MouseFl and
- VC_VideoSeg, etc. If you have a large program written for Version
- 1.1 that uses many of these variables and you don't want to
- change them all, you can use SCL1OLD.H header file that redefines
- all identifiers to new names. Take a look at this file for a
- complete list of modified variables.
-
- SCL1's constants -
-
- Several constants in SCL1 were not defined using uppercase as it
- is traditionally done in C. For example in version 1.X "LETTER"
- is used by GetString to accept capitalize letters while "letter"
- to accept letters but without capitalization. In version 2.0 all
- constants are uppercase. As with global variables the SCL1OLD.H
- file redefines all identifiers to new names.
-
- Function arguments-
-
- Several SCL1 functions received arguments of type char. Most of
- the times is more efficient to pass arguments of the integer type
- even if the extra storage space is not needed. All arguments of
- type char has been modified to type integer. This should not
- represent problems but you should not mix program modules
- compiled using version 1 with modules compiled with version 2.
-
- New functions-
-
- Video related - SCL1 now supports CGA 40 columns mode as well as EGA
- 43 lines and VGA 50 lines video modes. Video-pages are also supported.
- The following new functions have been added:
-
-
-
-
-
- SCL1 - Revision History - Page 2
-
- Center SetDialogColor
- DrawBoxLine SetShadowColor
- DrawLine SetUserBox
- ErrorShadowOff SetUserBoxLine
- ErrorShadowOn SetVideoMode
- FillBlock SetVideoPage
- Int24ShadowOff SetVideo4350
- Int24ShadowOn SetVideo25
- MessageShadowOff VideoConfig
- MessageShadowOn WriteOffLen
- PushCursor WriteOffset
- PopCursor WriteScreenLen
- SetInt24Colors YesNoShadowOff
- SetErrorBoxColor YesNoShadowOn
-
- Dialog functions - This is probably the most significant addition to
- version 2. Please refer to Dialog Functions (Appendix "E"). New
- functions:
-
- Calendar MenuSystem
- FieldCheck MouseButton
- Fields2 ScrollWindow
- FileBox2 Select
- LineEditor SW_MoveTo
- ListWindow TagList2
- LW_MoveTo TextWindow
-
- Mouse functions - Double click is now supported. You can also modify
- the mouse cursor appearance. The InitMouse function simplifies
- initialization process. New functions:
-
- InitMouse
- ResetMouseCur
- SetMouseCur
-
- File functions - Several optimizations have been performed. A bug in
- GetFileSize that trashed the file read/write pointer was fixed.
- FileBox has been greatly improved and several new options are
- available through the use of FileBox2 and WFileBox (see Dialog
- functions). New functions:
-
- FindFirst
- FindNext
-
- VERSION 2.1
-
- Version 2.1 is primarily for maintenance purposes. Bugs have been
- fixed in the following functions:
-
- Calendar - Did not initialized colors to Dialog colors default.
-
- FileBox, FileBox2, WFileBox - Two mouse buttons were
- sometimes highligthed.
-
- GetString and DialogBox - Exited when TAB or SHIFTTAB was
- pressed.
-
-
-
-
-
- SCL1 - Revision History - Page 3
-
- ListWindow & ScrollWindow - Had problems when mouse bars when not
- desired. The MOUSE_MOVE message was not always returned when the
- mouse was used. Also problems with the Tag and Highlight colors
- were solved.
-
- Select - Had problems with the NEW_POSITION message.
-
- TagList - Did not respond to the CANCEL command.
-
- The following functions have been improved:
-
- AddExtension, ChangeExtension and RemoveExtension had problems
- when the buffer was not completely initialized to null.
-
- GetString, DialogBox and LineEditor now initialize the last byte
- of the user's buffer to 0 (according to the size specified). This
- can fix problems with uninitialized buffers but CAN CAUSE
- problems if the size is incorrectly specified, BE CAREFUL! The
- buffer must have one byte more than the maximum number of
- characters to be accepted.
-
- The following functions have been optimized for speed:
-
- Calendar, SortPointers, and all FileBox functions.
-
- The following functions now support international languages:
-
- Calendar TagList
- ErrorBox WFileBox
- FileBox YesNo
- FileBox2
-
- The following functions have been added to help perform this task:
-
- C_SetUserLang TL_SetUserLang
- EB_SetUserLang WF_SetUserLang
- FB_SetUserLang YN_SetUserLang
- I24_SetUserLang
-
- The following new functions have been added:
-
- HBuf2Disk I24_SetUserLang
- HFile2Buf TL_SetUserLang
- Num2Date WF_SetUserLang
- C_SetUserLang Huge2Far (Microsoft version)
- EB_SetUserLang YN_SetUserLang
- FB_SetUserLang Date2Num
-
-
- The CheckBarMenu, DrawBarMenu and MenuSys functions have been deleted
- since other functions can perform the same tasks.
-
- Several errors in the documentation were fixed and some examples were
- changed. Also some redundant information has been eliminated to reduce
- the document size.
-
-
-
-
-
- SCL1 - Revision History - Page 4
-
- SSG SCL1's screen generator has been improved:
-
- - Up to two filenames can be specified in the command-line.
-
- - A DOS shell option has been added.
-
- - It can now import and save ASCII text.
-
- - A bug in the color variables definition screen that froze
- the program was fixed.
-
- - SSG now prompts user were to save the SSG.INI configuration
- file.
-
- VERSION 3.0
-
- Version 3.0 include many new features such as; Extended and Expanded
- memory support and keyboard macros. The following functions have been
- added:
-
- FB3_SetUserLang EMS_GetHandleCount
- PercentBar EMS_AvailableLogPages
- FileBox3 EMS_TotalLogPages
- ShellSort EMS_GetAllHandlePages
- SetBin2AsciiDel EMS_Realloc
- YNSetPosition EMS_Map
- MESS_SetPosition EMS_RestorePageMap
- XMS_Init EMS_GetHandleName
- XMS_GetVersion EMS_SetHandleName
- XMS_RequestHMA EMS_MapMultipleEMS
- XMS_ReleaseHMA EMS_GetNamedHandle
- XMS_GlobalEnableA20 EMS_TotalPhPages
- XMS_GlobalDisableA20 MCR_CloseFile
- XMS_LocalEnableA20 MCR_Init
- XMS_LocalDisableA20 MCR_MacroDisable
- XMS_QueryA20 MCR_MacroEnable
- XMS_QueryFreeExtended MCR_MacroExist
- XMS_AllocExtended MCR_Play
- XMS_FreeExtended MCR_ReadFile
- XMS_MoveExtended MCR_Record
- XMS_LockExtended MCR_RecordKey
- XMS_UnlockExtended MCR_RegisterBackF
- XMS_GetEMBHandleInfo MCR_RegisterMacro
- XMS_ReallocExtended MCR_RegisterTrapKey
- XMS_RequestUMB MCR_Report
- XMS_ReleaseUMB MCR_SaveMacro
- EMS_Init MCR_UnregisterBackF
- EMS_Alloc MCR_UnregisterMacro
- EMS_PageAdress MCR_UnregisterTrapKey
- EMS_Free TrapBIOSScreenWrite
- EMS_Version TrapInt10
- EMS_SavePageMap RestoreInt10
- EMS_Status InitDrive
- EMS_Move LeapYear
- EMS_Exchange MonthsPerDay
- EMS_GetHandlePages CheckEnhancedKeyb
-
-
-
-
-
- SCL1 - Revision History - Page 5
-
- CHANGES IN FUNCTIONS
-
- 1. The keyboard related functions have been rewritten in order to
- support the new keyboard macro capabilities, key trapping,
- background functions and enhanced keyboard support.
-
- 2. Video related functions have been optimized for size and speed.
-
- 3. The Calendar function now supports the mouse.
-
- 4. The Background function now has a defined local stack of 2048
- bytes.
-
- 5. The scroll position indicator in the ScrollWindow and ListWindow
- functions can now be user defined.
-
- 6. The assemply language functions have been fixed to perform
- correctly under the new BORLAND C++ compiler, due to the way this
- compiler handles the data segments in the compact, large and huge
- memory models.
-
-
- VERSION 3.1
-
- Version 3.1 includes new features, such as; the capability to modify
- and display character sets used in EGA/VGA displays, change the
- palette colors, new ways of handling windows, a linked list manager
- and a record file management function. The following functions have
- been added:
-
- ClockTick MouseMenu2
- CreateWindow ReadPalette
- DestroyWindow RecordFile
- GetCharSet WriteScreenC
- InitWData WriteScreenCLen
- LinkedList WriteScreenR
- MenuSystem2 WriteScreenRLen
- ModifyCharSet WriteWindow
- ModifyPalette YN_SetPosition
- ModifyPaletteColor
-